Apparatus and method for providing agent-based game service

ABSTRACT

Disclosed herein is an apparatus and method for providing an agent-based game service. The apparatus for providing an agent-based game service includes an input data management unit for collecting pieces of input data from a terminal device of at least one user. A data mining unit analyzes patterns of the pieces of input data and then generates and updates mined data according to the result of the pattern analysis. A game agent processing unit creates, using the mined data, a game agent which will replace the user and play a game instead of the user, and evolves the game agent to correspond to the updated mined data.

CROSS REFERENCE TO RELATED APPLICATION

This application claims the benefit of Korean Patent Application No. 10-2010-0116225, filed on Nov. 22, 2010, which is hereby incorporated by reference in its entirety into this application.

BACKGROUND OF THE INVENTION

1. Technical Field

The present invention relates generally to an apparatus and method for providing an agent-based game service and, more particularly, to an apparatus and method for providing an agent-based game service, which create a Non Player Character (NPC)-type agent based on input data received from the terminal device of a user and apply the NPC-type agent to a game when providing a game service in which a plurality of artificial intelligence NPCs appear, thus allowing the agent to play the game instead of the user.

2. Description of the Related Art

With the advancements in Internet and game service technology, game services in which intellectual and complicated Artificial Intelligence (AI) Non Player Characters (NPCs) appear in games have been rapidly developed. Computer game services have been developed from a conventional form in which a game program is independently running on a Personal Computer (PC) into the form of an online game service or a server-side game service that allows a user to play the game together with other users over the Internet. However, typical game services have the problem of causing users to become addicted to games, so that the users become excessively attached to such a game, greatly reduce their usual activities, and get impatient and feel uneasy unless they can play the game. One fundamental reason for these problems is that a gamer desires to raise his level in a specific game over a short period of time when playing the game.

A conventional game service such as an online game service is also problematic in that when a game service including intellectual AI game characters is provided, it is difficult to prevent a user from becoming addicted to the game and to continuously switch the game service.

SUMMARY OF THE INVENTION

An object of the present invention is to provide an apparatus and method for providing an agent-based game service, which create an NPC-type agent based on input data received from the terminal device of a user and apply the NPC-type agent to a game when providing a game service in which a plurality of AI NPCs appear, thus allowing the agent to play the game instead of the user.

In order to accomplish the above object, the present invention provides an apparatus for providing an agent-based game service, including an input data management unit for collecting pieces of input data from a terminal device of at least one user; a data mining unit for analyzing patterns of the pieces of input data and then generating and updating mined data according to the result of the pattern analysis; and a game agent processing unit for creating, using the mined data, a game agent which will replace the user and play a game instead of the user, and evolving the game agent to correspond to the updated mined data.

Preferably, the apparatus for providing an agent-based game service may further include a management unit for managing game agents while classifying the game agents into user-based game agents which respectively correspond to a plurality of users and pattern-based game agents which are created by analyzing patterns of the user-based game agents and sorting the user-based game agents according to pattern.

Preferably, the management unit may allow a game agent to be created in a relevant game and to replace a relevant user and play the game instead of the user in response to a game agent replacement request received from the user, and allow the game agent to be deleted from the game in response to a game resumption request received from the user.

Further, the present invention provides a method of providing an agent-based game service, including collecting pieces of input data from a terminal device of at least one user; analyzing patterns of the pieces of input data and then generating and updating mined data according to the result of the pattern analysis; creating, using the mined data, a game agent which will replace the user and play a game instead of the user; and evolving the game agent to correspond to the updated mined data.

Preferably, the method for providing an agent-based game service may further include managing game agents while classifying the game agents into user-based game agents which respectively correspond to a plurality of users and pattern-based game agents which are created by analyzing patterns of the user-based game agents and sorting the user-based game agents according to pattern.

Preferably, the managing may further include allowing a game agent to be created in a relevant game and to replace a relevant user and play the game instead of the user in response to a game agent replacement request received from the user; and allowing the game agent to be deleted from the game in response to a game resumption request received from the user.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objects, features and advantages of the present invention will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which:

FIG. 1 is a diagram schematically showing an apparatus for providing an agent-based game service according to an embodiment of the present invention;

FIG. 2 is a diagram schematically showing the game agent processing unit of the apparatus for providing an agent-based game service according to the embodiment of the present invention;

FIG. 3 is a diagram schematically showing the control unit of the apparatus for providing an agent-based game service according to the embodiment of the present invention;

FIG. 4 is a flowchart showing a method of providing an agent-based game service according to an embodiment of the present invention;

FIG. 5 is a flowchart showing in detail the game agent creation procedure of the method for providing an agent-based game service according to the embodiment of the present invention;

FIG. 6 is a diagram showing an example of the flow of a game service provided by the apparatus and method for providing an agent-based game service according to the embodiment of the present invention; and

FIG. 7 is a diagram showing an example of a processing procedure performed when a game agent replacement request is received from a user in the apparatus and method for providing an agent-based game service according to the embodiment of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present invention will be described in detail below with reference to the accompanying drawings. In the following description, redundant descriptions and detailed descriptions of known functions and elements that may unnecessarily make the gist of the present invention obscure will be omitted. Embodiments of the present invention are provided to fully describe the present invention to those having ordinary knowledge in the art to which the present invention pertains. Accordingly, in the drawings, the shapes and sizes of elements may be exaggerated for the sake of clearer description.

Prior to describing an apparatus and method for providing an agent-based game service according to an embodiment of the present invention, it should be noted that the term “Non Player Character (NPC)” refers to a game object which operates by itself based on artificial intelligence (AI), rather than a character which operates in a game under the control of a user, and that an NPC may be configured to interact with a user character in the game. When such an NPC can be applied to the game in the form of an agent which operates based on data input by the user, addiction to the game can be prevented. In addition, the present invention can be combined with a new profit model such as the exchange and sale of agents instead of the exchange and sale of existing game items.

Meanwhile, owing to the development of cloud computing-related systems and service technology, technology allowing a server to process various types of software services has recently been activated. Therefore, there is required a service method in which the processing of learning, evolution and artificial intelligence of each agent, which require a large amount of computation, can be processed by the server using the computing technology of the server.

FIG. 1 is a diagram schematically showing an apparatus for providing an agent-based game service according to an embodiment of the present invention.

An apparatus 100 for providing an agent-based game service according to an embodiment of the present invention may receive input data from the terminal device 111 of each user over the Internet 112. Further, the apparatus 100 for providing an agent-based game service according to the embodiment of the present invention may be provided on a server side and may provide an agent-based game service using high-performance hardware on the server side. That is, the apparatus 100 for providing an agent-based game service according to the embodiment of the present invention does not perform the artificial intelligence processing and rendering of a game that uses the Central Processing Unit (CPU) and the Graphics Processing Unit (GPU) of the user terminal device 111, by means of a program installed on a separate terminal. Instead, the apparatus 100 for providing an agent-based game service may use a streaming-based game service method which executes game service components, such as the generation of animation and sound, the provision of AI system functionality, and the performance of physical simulation and rendering, by using hardware resources, such as a CPU and a GPU, that are present in the apparatus 100 for providing an agent-based game service provided on the server side, and which provides the resulting video of the relevant game to the user in the form of streams.

Referring to FIG. 1, the apparatus 100 for providing an agent-based game service according to the embodiment of present invention may include an input data management unit 101, a data mining unit 102, a game agent processing unit 103, a management unit 104, a control unit 105, and a display unit 106. The apparatus 100 for providing an agent-based game service of FIG. 1 is illustratively shown, and may be configured such that some components may be added, deleted or modified as necessary. For example, in another embodiment, the apparatus 100 for providing an agent-based game service may be configured to include only the input data management unit 101, the data mining unit 102, the game agent processing unit 103, the control unit 105 and the display unit 106, without including the management unit 104. In a further embodiment, the apparatus 100 for providing an agent-based game service may be configured without including the control unit 105 or the display unit 106. Alternatively, the apparatus 100 for providing an agent-based game service may include none of the management unit 104, the control unit 105 and the display unit 106. Further, the individual components of the apparatus 100 for providing an agent-based game service may be implemented as a plurality of distribution systems, so that a parallel computing environment may be used.

The input data management unit 101 collects pieces of input data from the terminal devices 111 of respective users. The user terminal devices 111 may include all types of devices capable of running the game and receiving input from respective users, for example, a desktop computer, a laptop computer, a mobile terminal, etc. Each user can use the streaming-based game service provided by the apparatus 100 using his or her terminal device 111 over various types of communication networks such as the wired or wireless Internet. The pieces of input data received from the terminal devices 111 of the respective users may be collected over the various types of communication networks.

The data mining unit 102 analyzes the patterns of the pieces of input data collected by the input data management unit 101, and then generates and updates mined data according to the result of the pattern analysis. For example, the data mining unit 102 classifies and integrates the pieces of input data, and then analyzes the patterns of the input data. In an embodiment, the data mining unit 102 may perform a cleansing procedure for removing repeated or meaningless data from the collected input data. Next, the data mining unit 102 may convert pieces of cleansed data into pieces of data for game agents, classify the pieces of data for individual users, integrate the classified data, and analyze the patterns of the input data to generate mined data.

The game agent processing unit 103 creates a game agent, which will replace a relevant user and play the game instead of the user, using the mined data, and evolves the game agent to correspond to the updated mined data. The game agent processing unit 103 infers the mined data using an inference engine which is a part for performing processing related to artificial intelligence, learns using a well-known learning technique such as the machine learning, and then creates each game agent. Further, the game agent processing unit 103 can evolve the game agent to correspond to the minded data newly updated by the data mining unit 102. The detailed construction of the game agent processing unit 103 will be described in detail later with reference to the attached drawing.

The management unit 104 manages game agents created by the game agent processing unit 103 while classifying the game agents into user-based game agents 121 which respectively correspond to a plurality of users, and pattern-based game agents 122 which are created by analyzing the patterns of the user-based game agents 121 and sorting the user-based game agents 121 according to pattern. The user-based game agents 121 are game agents corresponding to the game sessions of the respective users. The pattern-based game agents 122 are game agents which are sorted according to pattern based on the actions, game score abilities and tactics of the plurality of user-based game agents 121. All of these game agents are managed by the management unit 104, wherein the management unit 104 may be a type of management database (DB).

Further, the management unit 104 may provide the function of allowing a game agent to be created in a game and to replace a relevant user and play the game instead of the user in response to a game agent replacement request received from the user, and allowing the game agent to be deleted from the game in response to a game resumption request received from the user. When the game agent replacement request is received from the user, the management unit 104 can play the game using any one of a user-based game agent 121 and a pattern-based game agent 122 depending on the user's selection.

Further, the management unit 104 can update the state information of the game agent with the progress of the game. The state information of the game agent denotes the state of the game agent that varies with the progress of the game, and may include the location, directionality, movement acceleration, items being held, game score, and the surrounding situation (e.g., safe, cautious, and dangerous situations) of the game agent.

The control unit 105 controls the game agent using the state information provided by the management unit 104. When a game agent replacement request is received from the user, the management unit 104 allows the game agent to be created in the game and to replace the user and play the game instead of the user in response to such a request. The control unit 105 functions to control the playing of the game agent when the game agent plays the game. The detailed construction of the control unit 105 will be described in detail with reference to the attached drawing.

The display unit 106 displays the situation of the progress of the game. The display unit 106 displays the situation of the progress of the game conducted by the game agent, thus allowing the user to monitor the situation of the progress of the game at any time. The situation of the progress of the game displayed on the display unit 106 may be displayed in the form of a streaming video.

FIG. 2 is a diagram schematically showing the game agent processing unit of the apparatus for providing an agent-based game service according to the embodiment of the present invention.

Referring to FIG. 2, the game agent processing unit of the apparatus for providing an agent-based game service according to the embodiment of the present invention may include a movement prediction processing unit 201, a learning processing unit 202, and an evolution processing unit 203. The game agent processing unit of FIG. 2 is illustratively shown, and may be configured such that some components may be added, deleted or modified as necessary.

The movement prediction processing unit 201 predicts a subsequent location to move to on the basis of the location, directionality and acceleration of a relevant game agent in the game. The movement location is primarily predicted in this way, so that the surrounding situation in the game can be sensed and the operation of the game agent can be reflected in the game. Such prediction can be performed using a well-known Kalman filter or an extended Kalman filter.

The learning processing unit 202 causes the game agent to learn methods of coping with respective situations using the state information of the game agent and the historical information of the game. In this case, as the learning methods, a machine learning technique may be used.

The evolution processing unit 203 adds state information different from the state information of the game agent to the state information to update the methods of coping with respective situations, thus evolving the game agent. That is, the evolution processing unit 203 evolves the game agent by adding new state information which was not present previously, rather than using the existing state information of the game agent, thus allowing the game agent to more precisely decide upon its own intention in the game.

FIG. 3 is a diagram schematically showing the control unit of the apparatus for providing an agent-based game service according to the embodiment of the present invention.

The control unit of the apparatus for providing an agent-based game service according to the embodiment of the present invention may process the function of allowing a game agent to spatially move in a game, processing a natural animation, and sensing a surrounding situation by using the internal state information of the game agent (the location, directionality, movement acceleration, items being held, game score and the surrounding situation of the game agent).

Referring to FIG. 3, the control unit of the apparatus for providing an agent-based game service according to the embodiment of the present invention may include a movement control unit 301, an animation control unit 302, and a situation sensing control unit 303. The control unit of FIG. 3 is illustratively shown and may be configured such that some components may be added, deleted or modified as necessary.

The movement control unit 301 performs the spatial movement of a game agent using the maximum speed threshold for the movement of the game agent and the maximum conversion speed and an acceleration vector for animation.

The animation control unit 302 creates the motions of the game agent. The animation control unit 302 creates natural motions when the game agent performs motions such as running, jumping or brandishing a weapon.

The situation sensing control unit 303 senses the situation of the game agent using the discrimination of visibility of the game agent. The situation of the game agent may include the number of surrounding enemies, the danger level of an environment (e.g., the level of safety, caution or danger), etc.

FIG. 4 is a flowchart showing a method of providing an agent-based game service according to an embodiment of the present invention.

Referring to FIG. 4, when the method for providing an agent-based game service according to the embodiment of the present invention is initiated, pieces of input data are collected from the terminal device of a relevant user at step S401. Here, all of the pieces of input data may be accumulated and stored.

Next, the patterns of the pieces of input data are analyzed, and then mined data is generated and updated according to the result of the pattern analysis at step 5402.

If the mined data is generated at step S402, a game agent which will play a relevant game instead of the relevant user is created using the mined data at step S403. Further, the game agent is evolved to correspond to the updated mined data at step S404.

Thereafter, when a game agent replacement request is received from the user, the game agent is created in the relevant game, replaces the user and plays the game instead of the user in response to such a request at step S405.

While playing the game, the game agent can be controlled using the state information of the game agent at step 5406. Further, the situation of the progress of the game can be displayed so that it can be monitored by the user at step S407.

When a game resumption request is received from the user while the game is being played, the game agent is deleted from the game in response to such a request at step S408, and the playing of the game by the game agent is terminated.

Since the method for providing an agent-based game service according to the embodiment of the present invention performs a game service process in a manner similar to that of the apparatus for providing an agent-based game service of FIG. 1 according to the embodiment of the present invention, the description of FIG. 1 is applied in the same manner to FIG. 4, and thus a detailed description thereof will be omitted unless a mention is especially given. Similarly to FIG. 1, in FIG. 4, all of the steps of the flowchart of FIG. 4 are not essential steps, and some steps may be added, modified or deleted in other embodiments.

FIG. 5 is a flowchart showing in detail the game agent creation procedure of the method for providing an agent-based game service according to the embodiment of the present invention.

Referring to FIG. 5, pieces of input data from a relevant user are collected and stored at step S501. From the pieces of stored input data, repeated or meaningless data is removed, so that the input data is cleansed at step S502. Next, the cleansed data is converted into data for a game agent at step S503, and thereafter data classification and analysis are performed via a mining procedure at step S504. Thereafter, the state information of the game agent based on the data mining is assigned, and thus a game agent is created at step S505.

The agent creation procedure of FIG. 5 is illustrated as an embodiment, and it is apparent to those skilled in the art that an embodiment with a different construction from that of the agent creation procedure of FIG. 5 could have been derived.

FIG. 6 is a diagram showing an example of the flow of a game service provided by the apparatus and method for providing an agent-based game service according to the embodiment of the present invention.

Referring to FIG. 6, a game service provision apparatus 30 corresponds to the apparatus for providing an agent-based game service according to the embodiment of the present invention. A user 10 accesses a game service provision apparatus 30 provided on a server side, requests the apparatus 30 to initiate a game service, and plays a game at step S601. The game service provision apparatus 30 provides the game service requested by the user at step S602, and stores data input by the user in an input data management unit at step S603. Further, the game service provision apparatus 30 performs data classification, data integration and pattern analysis using the stored input data to generate mined data at step S604, and creates a game agent using the mined data at step S605.

Thereafter, when a game agent replacement request is received from the user 10 at step S606, the game service provision apparatus on the server side creates a game agent, in which the session information of the user at the time point of the reception of the request is reflected, in the game and duplicates the behavior of the game agent at step S607. Thereafter, when a game agent 20 plays the game at step S608 without the user 10 personally playing the game, the game service provision apparatus 30 provides a relevant game service at step S609. Here, the game agent will have the form of a Non Player Character (NPC). Game agent state information depending on the game played by the game agent 20, that is, information about the location, directionality, movement acceleration, items being held, game score, and the surrounding situation (e.g., safe, cautious and dangerous situations) of the game agent 20, is updated in the management unit. Video related to the game playing performed in the service provision procedure (step S609) may be displayed or not be displayed in the form of a streaming video according to the state of the user (connection or the termination of the connection). Thereafter, when the game resumption request received from the user 10 is input to the game service provision apparatus 30 at step S610, the state and behavior of the game agent being run are reflected in the user session at step S611. After the game agent 20 has been stored in the management unit, it is deleted from the game at step S612. Thereafter, in response to a game play request S613 received from the user 10, the game service provision apparatus 30 again provides the game service starting from step S602 in the same manner at step S614.

FIG. 7 is a diagram showing an example of a processing procedure performed when a game agent replacement request is received from a user in the apparatus and method for providing an agent-based game service according to the embodiment of the present invention.

Referring to FIG. 7, when the user requests the game service provision apparatus provided on the server side to replace himself or herself by a game agent at step S701, whether such a request corresponds to a request for replacement by a user-based game agent or a request for replacement by a pattern-based game agent is determined at step S702. If it is determined that the request corresponds to the request for replacement by a pattern-based game agent, a pattern-based game agent is searched for and selected at step S703, and the behavior of the selected pattern-based game agent is duplicated at step S704. The duplication of the behavior denotes the creation of a new agent object in which the state information of the game agent has been duplicated. After duplication has been performed at step S704, the created pattern-based game agent is applied to the game, and then the game agent plays the game at step S705.

If it is determined that the request corresponds to a request for replacement by a user-based game agent at step S702, the user is replaced by a user-based game agent, and thereafter the game agent plays the game at step S706. Thereafter, at the same time that the game is played at step S706, the processing of the learning and evolution of the user-based game agent is performed at step S707. Furthermore, in order to reflect data required to create pattern-based game agents, user-based game agents are sorted into pattern-based game agents at step S708.

The above-described agent-based game service provision method, the game agent creation procedure, the flow of the game service, and the processing procedure performed when a game agent replacement request is received from the user, have been described with reference to the flowcharts presented in the drawings. Although the method has been shown and described using a series of blocks to simplify the description, the present invention is not limited to the sequence of the blocks. Some blocks may be performed in a sequence different from that shown and described in the present specification with respect to other blocks, or may be simultaneously performed. Furthermore, various different branches, flow paths and block sequences that achieve the same or similar results can be implemented. Further, all blocks shown in the drawings to implement the method described in the present specification may not be necessarily required.

In accordance with an aspect of the present invention, there can be provided an apparatus and method for providing an agent-based game service, which create an NPC-type agent based on input data received from a user's terminal device and apply the NPC-type agent to a game when a game service in which a plurality of artificial intelligence NPCs appear is executed, so that the agent can play the game instead of the user, thus reducing the time that the user is actually required to play the game.

In accordance with another aspect of the present invention, there can be provided an apparatus and method for providing an agent-based game service, which can also be applied to the simulation of special disaster prevention or the simulation of fights, as well as games.

Although specific embodiments of the present invention have been illustrated and described, it is apparent to those skilled in the art that the technical spirit of the present invention is not limited by the attached drawings and the above description, and various modifications and changes are possible without departing from the spirit and scope of the present invention. It should be understood that these modifications are included in the claims of the present invention without departing from the spirit of the invention. 

1. An apparatus for providing an agent-based game service, comprising: an input data management unit for collecting pieces of input data from a terminal device of at least one user; a data mining unit for analyzing patterns of the pieces of input data and then generating and updating mined data according to the result of the pattern analysis; and a game agent processing unit for creating, using the mined data, a game agent which will replace the user and play a game instead of the user, and evolving the game agent to correspond to the updated mined data.
 2. The apparatus of claim 1, further comprising a management unit for managing game agents while classifying the game agents into user-based game agents which respectively correspond to a plurality of users and pattern-based game agents which are created by analyzing patterns of the user-based game agents and sorting the user-based game agents according to pattern.
 3. The apparatus of claim 2, wherein the management unit allows a game agent to be created in a relevant game and to replace a relevant user and play the game instead of the user in response to a game agent replacement request received from the user, and allows the game agent to be deleted from the game in response to a game resumption request received from the user.
 4. The apparatus of claim 3, wherein the management unit plays the game using any one of a user-based game agent and a pattern-based game agent according to selection of the user.
 5. The apparatus of claim 3, wherein the management unit updates state information of the game agent with progress of the game.
 6. The apparatus of claim 5, further comprising a control unit for controlling the game agent using the state information.
 7. The apparatus of claim 6, wherein the control unit comprises: a movement control unit for performing spatial movement of the game agent using a maximum speed threshold for movement of the game agent, and a maximum conversion speed and an acceleration vector for animation; an animation control unit for generating motions of the game agent; and a situation sensing control unit for sensing a situation of the game agent using a discrimination of visibility.
 8. The apparatus of claim 1, wherein the game agent processing unit comprises: a movement prediction processing unit for predicting a subsequent location of the game agent based on a location, directionality and acceleration of the game agent; a learning processing unit for causing the game agent to learn methods of coping with respective situations using state information of the game agent and historical information of the game agent in the game; and an evolution processing unit for adding state information different from that of the game agent, updating the methods of coping with the respective situations, and then evolving the game agent
 9. The apparatus of claim 1, further comprising a display unit for displaying a situation of progress of the game.
 10. A method of providing an agent-based game service, comprising: collecting pieces of input data from a terminal device of at least one user; analyzing patterns of the pieces of input data and then generating and updating mined data according to the result of the pattern analysis; creating, using the mined data, a game agent which will replace the user and play a game instead of the user; and evolving the game agent to correspond to the updated mined data.
 11. The method of claim 10, further comprising managing game agents while classifying the game agents into user-based game agents which respectively correspond to a plurality of users and pattern-based game agents which are created by analyzing patterns of the user-based game agents and sorting the user-based game agents according to pattern.
 12. The method of claim 11, wherein the managing comprises: allowing a game agent to be created in a relevant game and to replace a relevant user and play the game instead of the user in response to a game agent replacement request received from the user; and allowing the game agent to be deleted from the game in response to a game resumption request received from the user.
 13. The method of claim 12, wherein the managing further comprises playing the game using any one of a user-based game agent and a pattern-based game agent according to selection of the user.
 14. The method of claim 12, wherein the managing further comprises updating state information of the game agent with progress of the game.
 15. The method of claim 14, further comprising controlling the game agent using the state information.
 16. The method of claim 10, further comprising displaying a situation of progress of the game. 